[WIP] ComponentPath and ChannelPath properties for Sockets and Inputs. #1489
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
@aseth1 , @klshrinidhi and I just chatted about changes I had initiated to convert the property within Sockets and Inputs to use ComponentPath and ChannelPath instead of std::string. The primary goal of these changes for 4.0 is to help fix bug #1420, but the changes also provide substantial cleanup of the code. The plan is for @klshrinidhi to finish this PR by tackling the tasks listed below, to get this PR merged, and then to fix #1420 in a separate pull request. If finishing these changes takes too long, then we should just fix #1420 the quick way and finish these changes after 4.0.
To-do list:
Component::getRelativePath()
).readSimplePropertyFromStream()
).setConnecteePath(std::string)
andappendConnecteePath(std::string)
.setConnecteePath(ComponentPath)
), and use these in Input::findAndConnect(), etc.isList
as an argument; this should be obtained by the new baseConnector
by asking the property if it is a list (I can clarify this in person).Channel::getPathName()
is unnecessary (replaced bygetAbsolutePath()
andgetRelativePath()
) and if so, delete it.operator>>(std::istream& in, ComponentPath&)
parseConnecteeName()
helper function, and related tests.@klshrinidhi please feel free to chat with me about these changes.
See the branch ComponentPath_property_sandbox for my first shot at rearranging the class hierarchy for Sockets and Inputs.
This change is